1. Field of the Invention
The present application relates to compiling and reporting data associated with activity on a network server and more particularly to generating and processing cookies directly on a client node to report web traffic data from the client node to a server responsible for compiling such data.
2. Description of the Prior Art
Programs for analyzing traffic on a network server, such as a worldwide web server, are known in the art. One such prior art program is described in U.S. patent application Ser. No. 09/240,208, filed Jan. 29, 1999, owned by applicant for the present invention, for a Method and Apparatus for Evaluating Visitors to a Web Server, which is incorporated herein by reference for all purposes. In these prior art systems, the program typically runs on the web server that is being monitored. Data is compiled, and reports are generated on demand—or are delivered from time to time via email—to display information about web server activity, such as the most popular page by number of visits, peak hours of website activity, most popular entry page, etc.
Analyzing activity on a worldwide web server from a different location on a global computer network (“Internet”) is also known in the art. To do so, a provider of remote web-site activity analysis (“service provider”) generates JavaScript code that is distributed to each subscriber to the service. The subscriber copies the code into each web-site page that is to be monitored. When a visitor to the subscriber's web site loads one of the web-site pages into his or her computer, the JavaScript code collects information, including time of day, visitor domain, page visited, etc. The code then calls a server operated by the service provider—also located on the Internet—and transmits the collected information thereto as a URL parameter value. Information is also transmitted in a known manner via a cookie received from the third party web tracking service.
Each subscriber has a password to access a page on the service provider's server. This page includes a set of tables that summarize, in real time, activity on the customer's web site.
Turning now to FIG. 1, indicated generally at 10 is a highly schematic view of a portion of the Internet implementing the present invention. Included thereon is a worldwide web server 12. Server 12, in the present example, is operated by a business that sells products via server 12, although the same implementation can be made for sales of services via the server. The server includes a plurality of pages that a site visitor can download to his or her computer, like computer 14, using a conventional browser program running on the computer. Examples of the type of pages that a visitor can download include informational pages and pages that describe the business and the products or services that are offered for sale.
As mentioned above, it would be advantageous to the seller to have an understanding about how customers and potential customers use server 12. As also mentioned above, it is known to obtain this understanding by analyzing web-server log files at the server that supports the selling web site. It is also known in the art to collect data over the Internet and generate activity reports at a remote server.
When the owner of server 12 first decides to utilize a remote service provider to generate such reports, he or she uses a computer 16, which is equipped with a web browser, to visit a web server 18 operated by the service provider. On server 18, the subscriber opens an account and creates a format for real-time reporting of activity on server 12.
To generate such reporting, server 18 provides computer 16 with a small piece of code, typically JavaScript code. The subscriber simply copies and pastes this code onto each web page maintained on server 12 for which monitoring is desired. When a visitor from computer 14 (client node) loads one of the web pages having the embedded code therein, the code passes predetermined information from computer 14 to a server 20—also operated by the service provider—via the Internet. This information includes, e.g., the page viewed, the time of the view, the length of stay on the page, the visitor's identification, etc. Server 20 in turn transmits this information to an analysis server 22, which is also maintained by the service provider. This server analyzes the raw data collected on server 20 and passes it to a database server 24 that the service provider also operates.
When the subscriber would like to see and print real-time statistics, the subscriber uses computer 16 to access server 18, which in turn is connected to database server 24 at the service provider's location. The owner can then see and print reports, like those available through the webtrendslive.com reporting service operated by the assignee of this application, that provide real-time information about the activity at server 12.
The above-described arrangement for monitoring web server activity by a service provider over the Internet is generally known in the art. Information analyzed in prior art systems generally consists of what might be thought of as technical data, such as most popular pages, referring URLs, total number of visitors, returning visitors, etc.
One known method for implementing this service is to load cookies on the computer of the visitor to the web page, where the cookies contain state information identifying that visitor (such as a unique visitor ID) and other information associated with that visitor (such as how many times the visitor has visited the particular web site). Despite the useful features that cookies provide to a user, there has been a recent backlash against using cookies as a perceived invasion of privacy. Modern web browsers now have a feature that allows a user to block all cookies and/or block cookies originating from third party web sites. This feature defeats the ability of web traffic analysis service providers from obtaining the information it needs to serve its customers.
Accordingly, the need remains for a way to still use cookies to obtain web site visitor data in the face of certain blocking features included in modern web browsers.